Skip to content

Add dedicated mobile and Settings navigation stacks#618

Draft
marksftw wants to merge 5 commits into
masterfrom
mobile-navigation
Draft

Add dedicated mobile and Settings navigation stacks#618
marksftw wants to merge 5 commits into
masterfrom
mobile-navigation

Conversation

@marksftw

@marksftw marksftw commented Jul 11, 2026

Copy link
Copy Markdown
Contributor

Summary

  • render the existing shared main menu as a full-screen root page on compact layouts while preserving the desktop sidebar
  • use paired iOS-style push/pop motion: the child slides from the right while the parent shifts partially off the left edge
  • add an interactive iOS-app edge-swipe that follows the finger, completes by distance or velocity, and snaps back when canceled
  • reuse that gesture for chat/project navigation, Settings detail-to-menu, and Settings menu-to-home while keeping mobile web and Android unchanged
  • apply the same paired transition when the compact main menu opens or closes the entire Settings surface
  • add centralized mobile history for menu, chat, New Chat, and project-detail pages without changing URL schemes
  • make compact Settings a full-screen menu with existing category routes pushed as detail pages; preserve desktop Settings
  • unmount popped chats after transitions and disconnect local streaming without canceling server-side processing
  • add focused mobile history, Settings history, response-lifecycle, and swipe-decision tests
  • update the mobile navigation plan with implementation status, gesture behavior, and the unsent-draft behavior

Validation

  • bun test: 96 passing
  • bun run typecheck
  • bun run lint: no errors; 12 existing warnings
  • bun run build
  • Prettier check
  • git diff --check

Remaining hands-on validation

  • compact mobile-web layout, paired animations, and browser back/forward
  • compact Settings menu/detail behavior across representative viewports
  • iOS and Android suspend/resume and fresh launch
  • navigation away from and back to an actively generating chat
  • physical-iPhone swipe tracking, velocity/distance completion, cancellation, and vertical-scroll rejection

The iOS edge-swipe implementation is complete in code but intentionally remains subject to physical-device feel validation.

@coderabbitai

coderabbitai Bot commented Jul 11, 2026

Copy link
Copy Markdown

Important

Review skipped

Draft detected.

Please check the settings in the CodeRabbit UI or the .coderabbit.yaml file in this repository. To trigger a single review, invoke the @coderabbitai review command.

⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro

Run ID: 54600216-503a-4e74-9afe-1aec183211f3

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Use the checkbox below for a quick retry:

  • 🔍 Trigger review
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch mobile-navigation

Comment @coderabbitai help to get the list of available commands.

@cloudflare-workers-and-pages

cloudflare-workers-and-pages Bot commented Jul 11, 2026

Copy link
Copy Markdown

Deploying maple with  Cloudflare Pages  Cloudflare Pages

Latest commit: 6734f6a
Status: ✅  Deploy successful!
Preview URL: https://34029634.maple-ca8.pages.dev
Branch Preview URL: https://mobile-navigation.maple-ca8.pages.dev

View logs

@marksftw marksftw changed the title Add dedicated mobile navigation stack Add dedicated mobile and Settings navigation stacks Jul 12, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant